package cn.com.huzo.repository.master;

import cn.com.huzo.model.entities.master.ColourEntity;
import huzofw.repository.GenericRepository;
import java.util.List;

/**
 * 颜色数据访问对象接口。
 *
 * @author 吴旭
 */
public interface ColourRepository extends GenericRepository<ColourEntity, Long> {

    /**
     * 根据给定颜色标识取得颜色信息对象。
     *
     * @param rootNodeName 颜色根节点名称
     * @param key          标识
     * @return 颜色信息对象
     */
    ColourEntity fetchByKey(String rootNodeName, Long key);

    /**
     * 返回给定颜色目录下的颜色信息数据列表
     * <p>
     * @param catalogueKey 目录标识
     * @return 颜色信息数据列表
     */
    List<ColourEntity> fetchAllByCatalogueKey(Long catalogueKey);

    /**
     * 批量更新成品颜色所属目录。
     *
     * @param itemList 要更新的颜色数据列表
     * @return 影响的行数
     */
    Integer batchChangeCatalogue(List<ColourEntity> itemList);
    
    /**
     * 返回当前目录下新数据OrderNo
     * <p>
     * @param catalogueId 目录标识
     * @return 顺序号
     */
    String fetchNewOrderNo(Long catalogueId);
}
